무상태 프로토콜(Stateless)
서버가 클라이언트의 상태를 보존하지 않는다는 의미
Statelful : 서버가 클라이언트의 상태를 알고 있음.(이전 요청에 대한 상태 유지)
Stateless : 서버가 클라이언트의 상태를 모름(컨텍스트를 보존x)
무상태로 설계를 하면,
요청이 증가함 -> 관리할 상태가 없기 때문에 서버를 대거 증설할 수 있음
상태 유지의 경우, 같은 서버를 유지하거나, 클라이언트의 상태를 알고 있는 다른 서버와 통신이 필요함. 만약 상태를 알고 있는 서버에 문제가 생긴다면 -> 클라이언트는 다시 처음부터 진행해야 한다
장점
서버 확장성 높음. 수평 확장인 스케일 아웃(Scale-Out)에 유리.
한계
모든 것을 무상태로 설계할 수 없다는 (ex. 로그인 상태를 쿠키나 세션에 유지) 실무적인 한계가 있다